home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / RCP.jar / com / extensibility / app / RegDialog.class (.txt) < prev    next >
Encoding:
Java Class File  |  2000-08-03  |  8.4 KB  |  305 lines

  1. package com.extensibility.app;
  2.  
  3. import com.extensibility.rock.RDialog;
  4. import com.extensibility.rock.Screen;
  5. import com.extensibility.util.Security;
  6. import java.awt.Component;
  7. import java.awt.Container;
  8. import java.awt.Dialog;
  9. import java.awt.FlowLayout;
  10. import java.awt.Font;
  11. import java.awt.Frame;
  12. import java.awt.GridBagConstraints;
  13. import java.awt.GridBagLayout;
  14. import java.awt.Insets;
  15. import java.awt.Window;
  16. import java.util.GregorianCalendar;
  17. import javax.swing.JButton;
  18. import javax.swing.JDialog;
  19. import javax.swing.JLabel;
  20. import javax.swing.JPanel;
  21. import javax.swing.JTextArea;
  22. import javax.swing.JTextField;
  23.  
  24. public class RegDialog extends RDialog {
  25.    JLabel art;
  26.    JTextArea intro = UI.createTextArea(false);
  27.    JLabel lblName = new JLabel();
  28.    JTextField fldName = UI.createTextField();
  29.    JLabel lblOrg = new JLabel();
  30.    JTextField fldOrg = UI.createTextField();
  31.    JLabel lblEmail = new JLabel();
  32.    JTextField fldEmail = UI.createTextField();
  33.    JLabel lblPhone = new JLabel();
  34.    JTextField fldPhone = UI.createTextField();
  35.    JLabel lblSN = new JLabel();
  36.    JTextField fldSN = UI.createTextField();
  37.    JButton btnRegister = new JButton();
  38.    JButton btnTrial;
  39.    JButton btnQuit = new JButton();
  40.    boolean canceled;
  41.    int situation;
  42.    int nums;
  43.    public static final int VALID = 999;
  44.    public static final int WELCOME = 0;
  45.    public static final int EXPIRED = 1;
  46.    public static final int INVALID = 2;
  47.    public static final int REREGISTER = 3;
  48.    public static final int OFFLINE = 4;
  49.    public static final int EXHAUSTED = 5;
  50.    public static final int OFFLINE_30DAY = 6;
  51.    public static final int OFFLINE_NDAYS = 7;
  52.    public static final int OFFLINE_NUSES = 8;
  53.  
  54.    public RegDialog(Frame var1, int var2, String var3, String var4, String var5, String var6, String var7, int var8) {
  55.       super(var1, true);
  56.       this.situation = var2;
  57.       this.nums = var8;
  58.       this.prepare(var2, var8);
  59.       if (var3 != null) {
  60.          this.fldName.setText(var3);
  61.       }
  62.  
  63.       if (var4 != null) {
  64.          this.fldOrg.setText(var4);
  65.       }
  66.  
  67.       if (var5 != null) {
  68.          this.fldSN.setText(var5);
  69.       }
  70.  
  71.       if (var6 != null) {
  72.          this.fldEmail.setText(var6);
  73.       }
  74.  
  75.       if (var7 != null) {
  76.          this.fldPhone.setText(var7);
  77.       }
  78.  
  79.       ((JDialog)this).setDefaultCloseOperation(0);
  80.    }
  81.  
  82.    public RegDialog(Frame var1, int var2, int var3) {
  83.       super(var1, true);
  84.       this.situation = var2;
  85.       this.nums = var3;
  86.       this.prepare(var2, var3);
  87.    }
  88.  
  89.    public String getName() {
  90.       return this.fldName.getText();
  91.    }
  92.  
  93.    public String getOrg() {
  94.       return this.fldOrg.getText();
  95.    }
  96.  
  97.    public String getEmail() {
  98.       return this.fldEmail.getText();
  99.    }
  100.  
  101.    public String getPhone() {
  102.       return this.fldPhone.getText();
  103.    }
  104.  
  105.    public String getSN() {
  106.       return this.fldSN.getText();
  107.    }
  108.  
  109.    protected void doTimeTrial(int var1) {
  110.       this.fldSN.setText(Security.generateRegCode8(new byte[]{BaseApplication.getApplication().getRegVersion()}, 32766, new GregorianCalendar(), var1, (byte)0));
  111.       this.doRegister();
  112.    }
  113.  
  114.    protected void doTrial(int var1) {
  115.       this.fldSN.setText(Security.generateRegCode8(new byte[]{BaseApplication.getApplication().getRegVersion()}, 32766, new GregorianCalendar(), 0, Security.LAUNCH_LIMIT_MASK));
  116.       this.doRegister();
  117.    }
  118.  
  119.    protected void doRegister() {
  120.       if (this.getName().length() != 0 && this.getOrg().length() != 0 && this.getPhone().length() != 0 && this.getEmail().length() != 0) {
  121.          if (this.getSN().equals("mint")) {
  122.             this.fldSN.setText(Security.generateRegCode8(new byte[]{BaseApplication.getApplication().getRegVersion()}, 32767, new GregorianCalendar(), 45, (byte)0));
  123.          } else if (this.getSN().equals("shilo")) {
  124.             this.fldSN.setText(Security.generateRegCode8(new byte[]{BaseApplication.getApplication().getRegVersion()}, 32762, new GregorianCalendar(), 45, (byte)0));
  125.          } else if (this.getSN().equals("9B51-1123-5080-8A0B")) {
  126.             this.fldSN.setText(Security.generateRegCode8(new byte[]{BaseApplication.getApplication().getRegVersion()}, 32762, new GregorianCalendar(), 30, Security.EXCELLON_30DAY_MASK));
  127.             ((Component)this).setVisible(false);
  128.          } else if (!Security.createRegCode(new byte[]{BaseApplication.getApplication().getRegVersion()}, this.getName(), this.getOrg(), this.getSN()).isValid()) {
  129.             DialogFactory.stop(this, UI.getString("stop.sn.invalid"));
  130.          } else if (Security.createRegCode(new byte[]{BaseApplication.getApplication().getRegVersion()}, this.getName(), this.getOrg(), this.getSN()).isBizTalkOnly()) {
  131.             ((Component)this).setVisible(false);
  132.          } else if (Security.createRegCode(new byte[]{BaseApplication.getApplication().getRegVersion()}, this.getName(), this.getOrg(), this.getSN()).isExcellon30Day()) {
  133.             ((Component)this).setVisible(false);
  134.          } else {
  135.             Security var1 = Security.createRegCode(new byte[]{BaseApplication.getApplication().getRegVersion()}, this.getName(), this.getOrg(), this.getSN());
  136.             ((Component)this).setVisible(false);
  137.          }
  138.       } else {
  139.          DialogFactory.stop(this, UI.getString("stop.name.or.co.or.em.or.ph.blank"));
  140.       }
  141.  
  142.    }
  143.  
  144.    public void setReason(int var1, int var2) {
  145.       if (var1 != 7 && var1 != 8) {
  146.          this.intro.setText(UI.getString("dialog.reg." + var1) + System.getProperty("line.separator") + System.getProperty("line.separator") + UI.getString("dialog.reg.msg." + var1) + System.getProperty("line.separator") + System.getProperty("line.separator") + UI.getString("dialog.reg.contact"));
  147.       } else {
  148.          this.intro.setText(UI.getString("dialog.reg." + var1, Integer.toString(var2)) + System.getProperty("line.separator") + System.getProperty("line.separator") + UI.getString("dialog.reg.msg." + var1, Integer.toString(var2), Integer.toString(var2)) + System.getProperty("line.separator") + System.getProperty("line.separator") + UI.getString("dialog.reg.contact"));
  149.       }
  150.  
  151.    }
  152.  
  153.    protected void prepare(int var1, int var2) {
  154.       ((Dialog)this).setTitle(UI.getString("dialog.reg.title"));
  155.       Font var3 = this.lblName.getFont();
  156.       this.art = new JLabel(UI.getIcon("register.gif"));
  157.       this.intro.setFont(var3);
  158.       this.intro.setBackground(((JDialog)this).getContentPane().getBackground());
  159.       this.setReason(var1, var2);
  160.       this.lblName.setText(UI.getString("dialog.reg.name.label"));
  161.       this.lblOrg.setText(UI.getString("dialog.reg.org.label"));
  162.       this.lblEmail.setText(UI.getString("dialog.reg.email.label"));
  163.       this.lblPhone.setText(UI.getString("dialog.reg.phone.label"));
  164.       this.lblSN.setText(UI.getString("dialog.reg.sn.label"));
  165.       this.fldSN.setText(UI.getString("dialog.reg.sn.default"));
  166.       this.btnRegister.setText(UI.getString("dialog.reg.register"));
  167.       this.btnRegister.addActionListener(new 1(this));
  168.       this.btnRegister.setMnemonic(UI.getMnemonic("dialog.reg.register"));
  169.       if (var1 == 4) {
  170.          this.btnTrial = new JButton();
  171.          this.btnTrial.setText(UI.getString("dialog.reg.trial"));
  172.          this.btnTrial.addActionListener(new 2(this));
  173.          this.btnTrial.setMnemonic(UI.getMnemonic("dialog.reg.trial"));
  174.       } else if (var1 == 6) {
  175.          this.btnTrial = new JButton();
  176.          this.btnTrial.setText(UI.getString("dialog.reg.trial.30day"));
  177.          this.btnTrial.addActionListener(new 3(this));
  178.          this.btnTrial.setMnemonic(UI.getMnemonic("dialog.reg.trial.30day"));
  179.       } else if (var1 == 7) {
  180.          this.btnTrial = new JButton();
  181.          this.btnTrial.setText(UI.getString("dialog.reg.trial.ndays", Integer.toString(var2)));
  182.          this.btnTrial.addActionListener(new 4(var2, this));
  183.          this.btnTrial.setMnemonic(UI.getMnemonic("dialog.reg.trial.30day"));
  184.       } else if (var1 == 8) {
  185.          this.btnTrial = new JButton();
  186.          this.btnTrial.setText(UI.getString("dialog.reg.trial.nuses", Integer.toString(var2)));
  187.          this.btnTrial.addActionListener(new 5(var2, this));
  188.          this.btnTrial.setMnemonic(UI.getMnemonic("dialog.reg.trial"));
  189.       }
  190.  
  191.       if (this.getSituation() == 3) {
  192.          this.btnQuit.setText(UI.getString("dialog.cancel"));
  193.          this.btnQuit.addActionListener(new 6(this));
  194.          this.btnQuit.setMnemonic(UI.getMnemonic("dialog.cancel"));
  195.       } else {
  196.          this.btnQuit.setText(UI.getString("dialog.quit"));
  197.          this.btnQuit.addActionListener(new 7());
  198.          this.btnQuit.setMnemonic(UI.getMnemonic("dialog.quit"));
  199.       }
  200.  
  201.       ((JDialog)this).getContentPane().setLayout(new GridBagLayout());
  202.       GridBagConstraints var4 = new GridBagConstraints();
  203.       var4.insets = new Insets(16, 16, 0, 16);
  204.       var4.gridx = 0;
  205.       var4.gridy = 0;
  206.       var4.gridheight = 11;
  207.       ((JDialog)this).getContentPane().add(this.art, var4);
  208.       var4.anchor = 17;
  209.       var4.gridx = 1;
  210.       var4.gridheight = 1;
  211.       ((JDialog)this).getContentPane().add(this.intro, var4);
  212.       var4.gridy = 1;
  213.       ((JDialog)this).getContentPane().add(this.lblName, var4);
  214.       var4.gridy = 2;
  215.       var4.insets.top = 4;
  216.       var4.fill = 2;
  217.       ((JDialog)this).getContentPane().add(this.fldName, var4);
  218.       var4.fill = 0;
  219.       var4.insets.top = 16;
  220.       var4.gridy = 3;
  221.       ((JDialog)this).getContentPane().add(this.lblOrg, var4);
  222.       var4.gridy = 4;
  223.       var4.insets.top = 4;
  224.       var4.fill = 2;
  225.       ((JDialog)this).getContentPane().add(this.fldOrg, var4);
  226.       var4.fill = 0;
  227.       var4.insets.top = 16;
  228.       var4.gridy = 5;
  229.       ((JDialog)this).getContentPane().add(this.lblEmail, var4);
  230.       var4.gridy = 6;
  231.       var4.insets.top = 4;
  232.       var4.fill = 2;
  233.       ((JDialog)this).getContentPane().add(this.fldEmail, var4);
  234.       var4.fill = 0;
  235.       var4.insets.top = 16;
  236.       var4.gridy = 7;
  237.       ((JDialog)this).getContentPane().add(this.lblPhone, var4);
  238.       var4.gridy = 8;
  239.       var4.insets.top = 4;
  240.       var4.fill = 2;
  241.       ((JDialog)this).getContentPane().add(this.fldPhone, var4);
  242.       var4.fill = 0;
  243.       var4.insets.top = 16;
  244.       var4.gridy = 9;
  245.       ((JDialog)this).getContentPane().add(this.lblSN, var4);
  246.       var4.gridy = 10;
  247.       var4.insets.top = 4;
  248.       var4.fill = 2;
  249.       ((JDialog)this).getContentPane().add(this.fldSN, var4);
  250.       var4.fill = 0;
  251.       var4.insets.top = 16;
  252.       JPanel var5 = new JPanel(new FlowLayout(2, 16, 4));
  253.       ((Container)var5).add(this.btnQuit);
  254.       if (this.btnTrial != null) {
  255.          ((Container)var5).add(this.btnTrial);
  256.       }
  257.  
  258.       ((Container)var5).add(this.btnRegister);
  259.       var4.gridy = 11;
  260.       var4.anchor = 13;
  261.       var4.insets.bottom = 16;
  262.       ((JDialog)this).getContentPane().add(var5, var4);
  263.       this.intro.setSize(300, 100);
  264.       ((Window)this).pack();
  265.       Screen.centerInScreen(this);
  266.    }
  267.  
  268.    public boolean userCanceled() {
  269.       return this.canceled;
  270.    }
  271.  
  272.    int getSituation() {
  273.       return this.situation;
  274.    }
  275.  
  276.    int getNums() {
  277.       return this.nums;
  278.    }
  279.  
  280.    public void addNotify() {
  281.       super.addNotify();
  282.       if (this.fldName.getText().length() == 0) {
  283.          this.fldName.requestFocus();
  284.       } else if (this.fldOrg.getText().length() == 0) {
  285.          this.fldOrg.requestFocus();
  286.       } else if (this.fldEmail.getText().length() == 0) {
  287.          this.fldEmail.requestFocus();
  288.       } else if (this.fldPhone.getText().length() == 0) {
  289.          this.fldPhone.requestFocus();
  290.       } else if (this.fldSN.getText().length() == 0) {
  291.          this.fldSN.requestFocus();
  292.       } else {
  293.          this.fldName.requestFocus();
  294.       }
  295.  
  296.       ((RDialog)this).installEscape(this.btnQuit);
  297.       ((RDialog)this).installDefault(this.btnRegister);
  298.       ((RDialog)this).installDefault(this.fldName);
  299.       ((RDialog)this).installDefault(this.fldOrg);
  300.       ((RDialog)this).installDefault(this.fldEmail);
  301.       ((RDialog)this).installDefault(this.fldPhone);
  302.       ((RDialog)this).installDefault(this.fldSN);
  303.    }
  304. }
  305.